Servo motors, including generally motors whose torque, position, or velocity may be controlled in response to a feedback signal, are used widely in industrial processes where control of one of these quantities is critical.
In application, a servo motor is typically associated with a sensor for providing a feedback signal for the controlled quantity. For both position and velocity control, the sensor is a position sensor sensing angular position, for example, a resolver providing phased sinusoidal outputs depending on the angle of its input shaft, or a rotary encoder providing either a digital word indicating absolute angular position or a series of pulses indicating incremental motion and direction.
The servo motor is typically driven by a motor amplifier which provides power for driving the motor. For a DC servo motor, the servo amplifier will typically be a high powered DC amplifier. More complex motor amplifiers are used for driving brushless AC motors and the like where commutation of the current flow in the windings is required. Amplifiers which provide commutation require a position feedback signal from the position sensor.
While some motor amplifiers may be programmed to provide rudimentary higher level control of the motor, such as setting limits of output speed, velocity or torque, ordinarily more complex control of the motor motion is done by a motion controller. The motion controller incorporates specialized hardware dedicated to real time motor control in response to signals from the position sensor. For example, the motion controller may implement a well known proportional/integral/derivative ("PID") type control loop.
The motion controllers typically also include a general purpose computer which may be programmed to provide a series of useful control functions. For example, a motion controller may include a function to control the velocity profile of the motor motion between the two positions. Typical profiles may be trapezoidal where the velocity ramps linearly up or down at the beginning and end of the motion, or may be "S curve" or "parabolic" where the straight ramps are replaced by curved profile shapes having constrained higher derivatives.
Motion controllers can enable or disable types of feedback during the control of the motor and importantly may execute conditional instructions akin to those used in programming conventional digital computers which allow the control parameters used by the motion controller to change depending on a history of previous external inputs.
Although some of the function provided by motion controllers overlap those which could be performed by a centralized industrial controller, the motion controller, unlike the centralized controller may be positioned in physical proximity to the motors being controlled and may execute high speed control tasks on a real-time basis. High speed real-time control is necessary for precise and reliable control of high speed servo systems.
Frequently in a multiple motor control application, it will be desired that one or more motors be operated in a manner that simulates a direct mechanical connection between the two motors either by a straight shaft, a gear box or a cam. This virtual connection is effected by employing a single position signal received by the motion controller to control multiple motors connected to that motion controller.
Such virtual links are most valuable when the relative position of the motors is such that an actual physical link would be impractical, for example, when the motors are separated by a considerable distance. In such situations, wires must be run from the output of the controller to the remote motor amplifier, or between a single encoder and multiple motion controllers near the two motors. Such a procedure involves a significant expense in wiring and is relatively inflexible. If the motion control program is to be changed, the encoders must be rewired.